package dao;

import bean.User;
import bean.user_info;
import com.github.pagehelper.PageInfo;

import java.sql.SQLException;
import java.util.Date;
import java.util.List;
import java.util.Map;

/**
 * @Author guoxiuwei
 * @Date 2020/8/17 20:03
 * @Title
 */
public interface UserDao {
    /**
     * 登录的判断方法 -> 暂时这么写  最后要改
     * 不可以值返回一个真假 要返回登录信息
     * 包括姓名 权限  或者直接返回一个用户id  然后由用户id再次查询
     *
     * @param name
     * @param password
     * @return boolean 类型  true为验证成功  flase 失败
     */
    boolean login(String name, String password);

    /**
     *
     * @param name
     * @param password
     * @param rights
     * @return 真假
     */
    boolean register(String name, String password, int rights);


    /**
     *
     * @param uinfoid
     * @param rname
     * @param gender
     * @param phoneNumber
     * @param inductionTime
     * @param address
     * @param salary
     * @return
     */
     int infoADD(int uinfoid, String rname, String gender, String phoneNumber, Date inductionTime,
                String address, double salary);

    /*
    * @param uname
    * */
     User FindUid(String name);

    /*
    * 分页查询
    *
    * */
     PageInfo InfoList(int page, int size);
     /*
     * 查询user表
     * */
     List<User> UserFind();
     User UserFindId(int uid);
     /*
     * 删除
     * */
     int DeleteInfo(int uinfoid);

    /**
     *修改之前的查询
     */
    user_info InfoUpdateFind(int uinfoid);
    /**
     *修改
     */
    int InfoUpdate(int uinfoid,String rname, String gender, String phoneNumber, Date inductionTime,
                   String address, double salary);
    /*
    * 修改权限
    * */
    int PermissionUpdate(int uid,int rights);
    /*
    * 搜索
    * */
    PageInfo InfoSearch(String rname);

    List<User> PermissionSearch(String uname);

    User personnelNum();


    public boolean passwordUpdate(String uname, String oldPassword, String newPassword);


}
